'use strict';

const Controller = require('egg').Controller;


class UserRoleController extends Controller {


  // 获取列表
  async index() {
    const { ctx } = this;
    const { pageNum = 1, pageSize = 10 } = ctx.request.query;
    const res = await ctx.service.admin.userRole.getList(pageNum, pageSize);
    res ? ctx.helper.success('获取列表成功', res) : ctx.helper.error('获取列表失败', 400);
  }


  // 根据获取详细资料
  async show() {
    const { ctx } = this;
    const res = await ctx.service.admin.userRole.findOne(ctx.params.id);
    res ? ctx.helper.success('获取成功', res) : ctx.helper.error('获取失败', 400);
  }

  // 删除
  async destroy() {
    const { ctx } = this;
    if (!ctx.request.body.ids) return ctx.helper.error('请选择要删除的选中项');
    const res = await ctx.service.admin.userRole.del(ctx.request.body);
    res ? ctx.helper.success('删除成功') : ctx.helper.error('删除失败', 400);
  }

  // 新增
  async create() {
    const { ctx } = this;
    const res = await ctx.service.admin.userRole.create(ctx.request.body);
    res ? ctx.helper.success('新增成功', res) : ctx.helper.error('新增失败', 400)
    ;
  }


  // 修改
  async update() {
    const { ctx } = this;
    const res = await ctx.service.admin.userRole.updated(ctx.params.id, ctx.request.body);
    res && res[0] !== 0 ? ctx.helper.success('修改成功') : ctx.helper.error('修改失败', 400);

  }
  // 创建 单用户-多角色关系
  async bulkCreateRole() {
    const { ctx } = this;
    await ctx.service.admin.userRole.bulkCreateRole(ctx.request.body);
    ctx.helper.success('成功');
  }
}

module.exports = UserRoleController;
